﻿// ----------------------------------------------------------------------------------------
// Author:                    Joaquín López y Magally Vargas
// Company:                   Albalia Interactiva S.L
// Assembly version:          1.0.0.0
// Date:                      10/02/2009
// Time:                      12:04
// Solution Name:             FacturaeAdd-in
// Solution Filename:         FacturaeAdd-in.sln
// Solution FullFilename:     C:\Ribbon_Facturae\FacturaeAdd-in.sln
// Project Name:              FacturaeAdd-in
// Project Filename:          FacturaeAdd-in.csproj
// Project FullFilename:      C:\Ribbon_Facturae\FacturaeAdd-in\FacturaeAdd-in.csproj
// Project Item Name:         FrmProgressBar.cs
// Project Item Filename:     FrmProgressBar.cs
// Project Item FullFilename: C:\Ribbon_Facturae\FacturaeAdd-in\FrmProgressBar.cs
// Project Item Kind:         Formulario
// Purpose:                   Mostrar información al usuario del proceso de emisión de una factura
//Copyright © 2008 - 2009 Albalia Interactiva S.L. Reservados todos los derechos.
// ----------------------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace FacturaeAdd_in
{

    /// <summary>
    /// Formulario que muestra al usuario una barra de progreso con información sobre
    /// lo que se está haciendo en el momento de emitir una factura.
    /// </summary>
    public partial class FrmProgressBar : Form
    {

        #region "Constructors"

        /// <summary>
        /// Constructor que inicializa todos los componentes gráficos del formulario.
        /// </summary>
        public FrmProgressBar()
        {
            InitializeComponent();
            LoadLanguage();
        }

        #endregion

        #region "Public Methods"

        /// <summary>
        /// Método que se encarga de cambiar el mensaje que se muesta al usuario 
        /// según se avanza en el proceso.
        /// </summary>
        /// <param name="msg"></param>
        public void setMessage(string msg) 
        {
            lbActions.Text = msg;
        }

        /// <summary>
        /// Método que carga el archivo de idioma y establece los textos de los controles
        /// en el idioma que corresponde.
        /// </summary>
        public void LoadLanguage()
        {
            try
            {
                Language labels = Language.getInstance();
                this.Text = labels.getLabels(this.Name);

            }
            catch (Exception)
            {
                ControlMessages msg = ControlMessages.getInstance();
                MessageBox.Show(msg.getMessage(ControlMessages.Msg.ErrorLoadLanguage), msg.getMessage(ControlMessages.Msg.CaptionConfig), MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

        }

        #endregion 
    }
}
